#ifndef _CCALAPP_H_
#define _CCALAPP_H_

#include "auto.h"

#include "ccalmanager.h"
#include "ccalwindow.h"

#include <buola/app/capp.h>
#include <buola/app/ccmdline.h>
#include <buola/dbus/cobject.h>

namespace buola { namespace bcal {

class CCalApp : public CApp, public dbus::CObject<CCalApp>
{
public:
    CCalApp();
    ~CCalApp();

    bool Activate();
    bool Start();

    CCalManager *GetManager()   {   return mManager;    }

protected:
public:
    template <class tIntrospector>
    static void Introspect(tIntrospector &pI)
    {
    }

private:
    PCalWindow mWindow;
    CCalManager *mManager;

    static CCmdLineFlag mOptionService;
};

/*namespace buola*/ } /*namespace bcal*/ }

#endif
